package com.example.demo.code.command;


import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;

public class HttpContextUtil {

    //获取请求的对象
    public static HttpServletRequest getRequest(){
        return RequestContextHolder.requestAttributes.request;

    //获取ip地址
    public static String getIpAddress(){
        var ip = "127.0.0.1";
        val request = request;
        ip = request.getHeader("x-forwarder-for");
        if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
            ip=request.getHeader("Proxy-Client-IP");
        }
         if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
             ip=request.getHeader("WL-Proxy-Client-IP");
         }
         if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
             ip=request.getHeader("HTTP_CLIENT-IP");
         }
         if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
             ip=request.getHeader("HTTP_X_FORWARDED_FOR");
         }
         if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
             ip=request.getRemoteAddr();
         }


         System.out.println(ip);
        return "0:0:0:0:0:0:0:1".equals(ip) ? "127.0.0.1":ip;
    }
}

    public static String getIpAddress() {
    }
